package com.qijian.common.annotation;

import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.qijian.common.interfaceable.DownStreamAble;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 有两种方式定义下游实体
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD,ElementType.TYPE})
public @interface DownStreamValidated {

    Class<? extends DownStreamAble> value() default DownStreamAble.class;

    Class<? extends Model<?>>[] values() default {};

    String sourceType() default "";

}
